#include<stdio.h>
#include<string.h> //字符串和内存的一些操作函数

//strlen:计算字符串长度
//strcmp:字符串比较函数
//strncmp: 指定n个字符比较
//拷贝完或者拼接完之后自动在尾部加\0
//strcpy:拷贝字符串,不计后果
//strncpy:拷贝n个字符
//strcat:字符串拼接
//strncat:拼接n个字符
//
//strstr:字符串匹配函数
//strtok:字符串切割函数

int main()
{
    // char s1[]="helloworld1";
    // char s2[]="helloworld";
    // printf("%ld\n",strlen(s)); //少一个\0
    // printf("%ld\n",sizeof(s));
    // if(strcmp(s1,s2)==0)
    // {
    //     printf("字符串相等\n");
    // }
    // printf("%d\n",strcmp(s1,s2));

    // if(strncmp(s1,s2,3)==0)
    // {
    //     printf("1");
    // }

    // 
    
    // char s[]="hello";
    // char s2[9]="world";
    // strncat(s2,s,sizeof(s2)-1-strlen(s2)); //把s拼到s2的后面
    // printf("%s\n",s2);

    // char s1[]="helloworld";
    // char s2[]="ell";
    // char *dest=strstr(s1,s2);
    // //如果找到，返回s2在s1中的首地址,如果没找到，返回空指针
    // if(dest)  //dest 不为空
    // {
    //     printf("%s\n",dest);
    // }
    // else
    // {
    //     printf("没找到\n");
    // }


    //分隔符
    char s[]="zhangsan,lisi.wangwu. . . .3443";
    char *p=strtok(s,",.");
    while(p!=NULL)
    {
        printf("%s\n",p);
        p=strtok(NULL,",.");
    }
    //delim:分隔符的集合
    //返回值指针：切割下来的字符串的首地址
    // char *p= strtok(s,",.");
    // printf("%s\n",p);
    // //想切割之前的字符串，传NULL
    // p= strtok(NULL,",.");
    // printf("%s\n",p);
    // p= strtok(NULL,",.");
    // printf("%s\n",p);
    // //当没有可切割的字符串时，返回空指针
    // p= strtok(NULL,",.");
    // printf("%s\n",p);
    return 0;
}